The need to store digital files, documents, pictures, images and other data continues to increase rapidly. In connection with the electronic storage of data, various data storage systems have been devised for the rapid and secure storage of large amounts of data. Such systems may include one or a plurality of storage devices that are used in a coordinated fashion. Systems in which data can be distributed across multiple storage devices such that data will not be irretrievably lost if one of the storage devices (or in some cases, more than one storage device) fails are also available. Systems that coordinate operation of a number of individual storage devices can also provide improved data access and/or storage times. Examples of systems that can provide such advantages can be found in the various RAID (redundant array of independent disks) levels that have been developed. Whether implemented using one or a plurality of storage devices, the storage provided by a data storage system can be treated as one or more storage volumes.
In order to facilitate the availability of desired data, it is often desirable to maintain different versions of a data storage volume. Indeed, data storage systems are available that can provide at least limited data archiving through backup facilities and/or snapshot facilities. These facilities can comprise automated or semi-automated batch replication facilities. By maintaining different versions, disaster recovery is facilitated. For example, if a virus causes a current storage volume version to be lost or otherwise unusable, the system can be rolled back to an earlier version that does not include the file that introduced the virus. In order to further facilitate the use and security of data, it is often desirable to create a copy of a data storage volume that is originally maintained by a first data storage system on a second data storage system. However, creating backup copies or snapshots of a first data storage system on a second data storage system, commonly referred to as remote replication, introduces complications. In particular, a data storage system that is the source of the data that is to be replicated must act as an initiator device in order to move the data to the recipient data storage system that is acting as the target. However, data storage systems typically are targets, not initiators. Furthermore, an initiator is a more complex and difficult to implement function, requiring more intelligence and processing power to implement as compared to a typical target device. Accordingly, in order for a source data storage system to perform data replication in cooperation with a remote data storage system, the source data storage system must typically be enhanced to include initiator functions, as well as remote replication functions.
Data replication between different storage systems is further complicated where the initiator and the target data storage systems are from different data storage system vendors. This is because different vendors typically use different protocols and instructions to control operation of their data storage systems. As a result, the automated or semi-automated batch replication of data between data storage systems from different vendors is at best difficult, and is often impossible.